This disclosure relates generally to techniques to identify the presence and location of a machine-readable object. More particularly, but not by way of limitation, the disclosure relates to techniques to more efficiently track the location of a machine-readable object in a series of images obtained by an imaging device such as a camera.
For purposes of this specification, a machine-readable object refers to any optically detectable information that is associated with additional data. Common machine-readable objects include 1D and 2D barcodes that are associated with marketing, pricing, or other information. Machine-readable objects may also include images that are associated with additional data. For example, an image of a historical location may be detectable to retrieve information associated with the location. While machine-readable objects were at one time recognizable only by specialized optical scanning systems, many consumer devices that incorporate image capture devices, such as smartphones, PDAs, and tablet computers, are now capable of detecting machine-readable objects in a captured image and retrieving the data with which the machine-readable objects are associated. With the increase in devices capable of detecting machine-readable objects and presenting information associated with the detected objects, the number of applications for machine-readable objects has drastically increased. Machine-readable objects that were once used primarily for associating prices with products to which they were attached can now be used to deliver information such as marketing information, coupons, augmented reality information, and many other types of information directly to consumers.
While the ability of consumer devices to detect machine-readable objects and present information related thereto has led to an increase in the number of applications for machine-readable objects, these consumer devices (e.g., smartphones, tablets, PDAs, etc.) often have relatively limited processing capabilities. Because existing operations to detect and track machine-readable objects are computationally expensive, execution of such operations on consumer devices has certain drawbacks (e.g., battery usage, processing power diverted from other operations, etc.).